package com.qumitech.visualnovel.service.voiceRoom;

import com.alibaba.fastjson.JSONObject;
import com.qumitech.visualnovel.controller.vo.voiceRoom.VoiceRoomData;
import com.qumitech.visualnovel.controller.vo.voiceRoom.VoiceRoomStatisticSearchConditionDTO;
import com.qumitech.visualnovel.model.dao.console.UserUpperVoiceRoomDO;
import com.qumitech.visualnovel.pubdef.dto.voiceroom.ConsoleVoiceRoomDataDTO;
import com.qumitech.visualnovel.pubdef.dto.voiceroom.ConsoleVoiceRoomPieDataDTO;
import com.qumitech.visualnovel.pubdef.dto.voiceroom.query.VoiceRoomDataQueryDTO;
import com.qumitech.visualnovel.pubdef.dto.voiceroom.query.VoiceRoomUserUpperQueryDTO;

import java.util.HashMap;
import java.util.List;

/**
 * @Auther: yilu
 * @Date: 2019/3/12 18:45
 * @Description:
 */
public interface VoiceRoomStatisticService {
    List<ConsoleVoiceRoomDataDTO> getVoiceRoomData(VoiceRoomDataQueryDTO queryDTO);
    Integer countVoiceRoomData(VoiceRoomDataQueryDTO queryDTO);
    HashMap<String, Long> getVoiceRoomStatisticData(VoiceRoomDataQueryDTO queryDTO);

    VoiceRoomData getVoiceRoomDetailData(VoiceRoomStatisticSearchConditionDTO conditionDTO);

    List<UserUpperVoiceRoomDO> listUserUpperVoiceRoom(VoiceRoomUserUpperQueryDTO voiceRoomUserUpperQueryDTO);
    Integer countUserUpperVoiceRoom(VoiceRoomUserUpperQueryDTO voiceRoomUserUpperQueryDTO);

    HashMap<String, Long> statisticUserUpperVoiceRoom(VoiceRoomUserUpperQueryDTO voiceRoomUserUpperQueryDTO);

    List<ConsoleVoiceRoomDataDTO> getVoiceRoomDataDailySum(VoiceRoomDataQueryDTO queryDTO);

    Integer countVoiceRoomDataDailySum(VoiceRoomDataQueryDTO queryDTO);

    List<ConsoleVoiceRoomPieDataDTO> getVoiceRoomDataPie(VoiceRoomDataQueryDTO queryDTO);

    JSONObject getVoiceRoomDataLine(VoiceRoomDataQueryDTO queryDTO);


}
